Conversation
* UserPersonalizer in CampaignProcessorMessageHandler * HtmlToText * MessageDataLoader * TextParser * RemotePageFetcher * Use repo methods * Use MessagePrecacheDto * Refactor * Todo * SystemMailConstructor * EmailBuilder * InjectedByHeaderSubscriber * TemplateImageManager * ExternalImageCacher * TemplateImageEmbedder * Mailer * RemotePageFetcherTest * TextParserTest * MessageDataLoaderTest * MessageDataLoaderTest * Test fix * Fix: phpmd * Fix: phpcs * After review 0 * After review 1 * Add tests * EmailBuilderTest * update coderabbit.yaml * Add tests * MailSizeChecker * Feat/email building with attachments (#375) New Features PDF generation for messages, per-subscriber remote-content fetching, tracking-pixel user tracking, and richer attachment handling with downloadable copies. Improvements Unified email builder flow with consistent composition and multi-format output (HTML/Text/PDF); expanded, context-aware placeholder personalization (many URL/list resolvers); improved remote-content precaching and output formatting; new configurable parameters and translations. --------- Co-authored-by: Tatevik <tatevikg1@gmail.com> * Feat: email forwarding (#377) - Message forwarding: send campaigns to friends (optional personal note), per-user limits, admin notifications on success/failure, and forwarding statistics; forwarded messages prefixed "Fwd". - Admin-copy emails: configurable toggle to send admin copies and select recipients. --------- Co-authored-by: Tatevik <tatevikg1@gmail.com> * Cutoff from forward_email_period config * ForwardingResult * Remove MessageFormat consts * Testing bundle * After review 3 * MessageDataLoader types * Fix HTMLPurifier_Config --------- Co-authored-by: Tatevik <tatevikg1@gmail.com>
New Features
Attachment download service that validates access, resolves files, detects MIME types, and returns downloadable content.
Lightweight downloadable attachment DTO and a new exception for missing attachment files.
Public constant to mark forwarded attachments.
Bug Fixes
Attachment download links now use a path-based format with encoded UID.
|
Important Review skippedToo many files! This PR contains 265 files, which is 115 over the limit of 150. ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (265)
You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
📝 Coding Plan
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment Tip CodeRabbit can generate a title for your PR based on the changes.Add |
New Features
Message view tracking: records when subscribers view messages and captures metadata (IP, User-Agent, referer).
Enhancements
Quick actions to mark messages as viewed and to check viewed status.
Message view counters now increment when viewed.
Refactor
Repository lookup renamed for consistency and callers updated.
Chores
Switched REST API parameter to a base URL and updated tracking image path.
Refactor
Recipient addresses are now passed explicitly throughout the email pipeline for clearer, more reliable message construction and handling.
Subscriber creation now requires an email at instantiation, enforcing consistent initialization.
Bug Fixes
Admin notification filtering relaxed so system notifications are handled more consistently even when recipient info is missing.
|
@coderabbitai please add a summary of this pull request:
|
|
Tip For best results, initiate chat on the files or code changes. 🧩 Analysis chain🏁 Script executed: Length of output: 35008
🗂️ PR Summary — Key Changes📧 Email Building Pipeline (Refactor + New Features)
📤 Message Forwarding (
|
@coderabbitai summary
Thanks for contributing to phpList!